home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
TPUG Xtras
/
Xtras
/
club1.d64
/
fast s_tiny dir3
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2009-02-07
|
4KB
|
102 lines
0 REM *******************************
1 REM * TINY DIRECTORY BY R.B.WOLFF *
2 REM * PRINTS A TINY 2, 3, OR 5 *
3 REM * COLUMN DIRECTORY *
4 REM * FX80 PRINTER WITH CARD?/G+ *
5 REM * 3 & 5 COLUMN AND SUPER SMALL*
6 REM * OPTIONS BY:FRED LAYBERGER *
7 REM * OMAHA,NE * NOVEMBER 1984 *
8 REM * FASTER DIRECTORY READ JAN 85*
9 REM * IMPROVED DIR READ MARCH 85 *
10 REM*******************************
12 CLR:GOSUB160:GOTO20
14 REM ...SOUND...
16 POKE54296,5:POKE54277,2:POKE54278,251:POKE54276,17:POKE54273,80:POKE54272,10
18 FORI=.TO22:NEXT:FORI=.TO30:POKE54276,16:NEXT:RETURN
20 DIMN$(145):OPEN15,8,15:ESC$=CHR$(27)
22 POKE53280,1:POKE53281,15
24 PRINT"[147]FAST SUPER TINY DIR3[146]"
25 PRINT"[162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162]"
26 PRINT"PRINTS A TINY 2,3 OR 5":PRINT"COLUMN DIRECTORY"
28 PRINT"F1-READ/PRINT DIRECTORY"
30 PRINT"INSERT DISKETTE FIRST"
32 PRINT"F3-SET/RESET PRINT OPTIONS"
34 PRINT"F5-QUIT/EXIT TO BASIC"
36 GOSUB14:IFB>14THENB=.
38 POKE646,B:PRINT"SELECT ONE":IFA$="[135]"THENCLOSE15:PRINT"[147][144]":END
40 GETA$:IFA$<>"[133]"ANDA$<>"[134]"THENB=B+1:PRINT"[145][145][145][145][145][145]";:GOTO36
42 IFA$="[134]"THENGOSUB120:GOTO22
44 PRINT "[147]WORKING[144]"
46 POKE850,32:POKE851,228:POKE852,255:POKE952,29
48 PRINT#15,"I":OPEN1,8,.,"$0":CLOSE1:GOSUB166:OPEN1,8,.,"$0"
50 SYSDL:N$(.)=MID$(X$,6,22):POKE850,76:POKE851,100:POKE852,3:POKE952,24:CT=1
52 SYSDL:B$=LEFT$(X$,1):C$=MID$(X$,2,1):T$=STR$(ASC(C$)*256+ASC(B$))
54 T$=RIGHT$(" "+T$,3):N$(CT)=MID$(X$,2,21)+T$+" "
56 PRINT" "N$(CT):IFST=.THENCT=CT+1:GOTO52
58 B$=RIGHT$(N$(CT),5)+" BLOCKS FREE ":N$(CT)=""
60 PRINT"[145] BLOCKS FREE "
62 CLOSE1:GOSUB166:GOSUB118
64 GOSUB140:CT=CT-1:X=INT(CT/VAL(CS$)):P2=2*X:P3=3*X:P4=4*X
66 IFLEN(STR$(CT/VAL(CS$)))<=LEN(STR$(CT))THEN90
68 X=X+1:IFCS$="2"THENP2=2*X-1:GOTO90
70 IFCS$="5"THEN80
72 REM ******* 3 COLUMN *********
74 IFRIGHT$(STR$(CT/3),1)="3"THENP2=X:P3=2*X-1:GOTO90
76 IFRIGHT$(STR$(CT/3),1)="4"THENP2=X:P3=2*X-1:GOTO90
78 P2=2*X:P3=3*X-1:GOTO90
80 REM ******* 5 COLUMN *********
82 IFRIGHT$(STR$(CT/5),1)="2"THENP2=2*X-1:P3=3*X-2:P4=4*X-3:GOTO90
84 IFRIGHT$(STR$(CT/5),1)="4"THENP2=2*X:P3=3*X-1:P4=4*X-2:GOTO90
86 IFRIGHT$(STR$(CT/5),1)="6"THENP2=2*X:P3=3*X:P4=4*X-1:GOTO90
88 P2=2*X:P3=3*X:P4=4*X
90 REM ******* PRINT TO PRINTER *******
92 IFPS$<>"R"THENPRINT#4,CHR$(27)"S"CHR$(1);
94 FORP=1TOX
96 PRINT#4,N$(P)" ";
98 IFP2=>P+XTHENPRINT#4,N$(P+X)" ";
100 IFP+P2>CTTHENPRINT#4:GOTO112
102 IFP3=>P+P2THENPRINT#4,N$(P+P2)" ";
104 IFP+P3>CTTHENPRINT#4:GOTO112
106 IFP4=>P+P3THENPRINT#4,N$(P+P3)" ";
108 IFP+P4>CTTHENPRINT#4:GOTO112
110 IFP4+X=>P+P4THENPRINT#4,N$(P+P4)
112 NEXTP
114 PRINT#4,ESC$CHR$(64):REM RESET PRINTER
116 CLOSE4:GOTO22
118 IFXX=1THENRETURN: :REM ******* PRINTER SETUP *********
120 PRINT"[147]PRINT SELECTION??":PRINT"[144]R[146]EGULAR":PRINT"C[146]ONDENSED"
122 GOSUB14:PRINT"S[146]UPER CONDENSED":POKE198,0
124 GETPS$:IFPS$<>"R"THENIFPS$<>"C"THENIFPS$<>"S"THEN124
126 PRINT"HOW MANY COLUMNS 2[146] OR 3[146]?";:IFPS$="S"THENPRINT"[157][157][157][157][157][157], 3[146] OR 5[146]?"
128 GOSUB14:POKE198,0
130 GETCS$:IFCS$<>"2"THENIFCS$<>"3"THENIFCS$<>"5"THEN130
132 GOSUB14:POKE631,34:POKE198,1:PRINT"[147][144]INPUT TODAYS DATE";:INPUTD$
134 GOSUB14:INPUT"IS THE PRINTER READY[146][144] (Y[146]/N[146]) Y[157][157][157]";A$
136 IFA$<>"Y"THENPRINT"[145][145]";:GOTO132
138 XX=1:PRINT"[147]WORKING...":RETURN
140 CLOSE4:OPEN4,4,4:PRINT#4,ESC$CHR$(64)ESC$"G";
142 IFPS$="R"ANDCS$="3"THENPRINT#4,ESC$"E";:GOTO146
144 PRINT#4,CHR$(15)
146 PRINT#4,N$(.)" ";:IFPS$="S"ANDCS$="2"THENPRINT#4,CHR$(13);
148 PRINT#4," "B$D$:PRINT#4,ESC$;CHR$(64);:REM RESET
150 IFPS$<>"S"THENPRINT#4,ESC$"E";:REM EMPHASIZED
152 PRINT#4,ESC$CHR$(85)CHR$(0);:REM BIDIRECTIONAL ESC U 0
154 IFPS$="S"THENPRINT#4,CHR$(15);:REM CONDENSED PRINT
156 IFPS$<>"R"THENPRINT#4,ESC$CHR$(65)CHR$(6);: REM LN FEED TO 6/72"(1/12")ESCA
158 RETURN
160 X$="XX":FORI=.TO3:X$=X$+X$:NEXT
162 DL=830:RESTORE:FORI=DL TO DL+148:READX:POKEI,X:NEXT
164 RETURN
166 POKE198,0:INPUT#15,ER,ER$,T,S:IFER=.THENRETURN
168 PRINT"[147]"ER;ER$;T;S:WAIT198,1:RUN
170 DATA160,2,177,45,153,249,0,200,192,6,208,246,32,204,255,162
172 DATA1,32,198,255,76,100,3,32,228,255,32,228,255,32,163,3
174 DATA32,176,3,76,88,3,32,228,255,240,10,201,42,208,247,32
176 DATA176,3,76,100,3,32,228,255,32,228,255,32,228,255,32,176
178 DATA3,32,228,255,32,176,3,32,228,255,201,13,240,48,201,34
180 DATA208,245,160,0,32,228,255,201,34,234,240,40,32,163,3,32
182 DATA176,3,76,146,3,201,128,144,2,233,128,201,32,176,2,169
184 DATA63,96,164,254,145,252,200,132,254,192,24,240,1,96,32,204
186 DATA255,40,40,96,234,32,228,255,201,0,240,154,32,163,3,32
188 DATA176,3,76,195,3